// MouseSensitiveCollection.h: interface for the CMouseSensitiveCollection class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MOUSESENSITIVECOLLECTION_H__B34E1C2C_3C30_4583_999A_0EE9858056E5__INCLUDED_)
#define AFX_MOUSESENSITIVECOLLECTION_H__B34E1C2C_3C30_4583_999A_0EE9858056E5__INCLUDED_

#include "AnsiScreen.h"
#include "IMouseSensitive.h"
#include "PictureUrlMouseSensitive.h"
#include "UrlMouseSensitive.h"
#include "NullMouseSensitive.h"

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CMouseSensitiveCollection 
{
protected:
	CAnsiScreen *m_pScreen;
	IMouseSensitive *m_activeSensitive;
	//
	CArray<IMouseSensitive*, IMouseSensitive*> m_mouseSensitives;
	CPictureUrlMouseSensitive m_pictureUrlMouseSensitive;
	CUrlMouseSensitive m_urlMouseSensitive;
	CNullMouseSensitive m_nullMouseSensitive;

public:
	IMouseSensitive* GetActiveSensitive();
	void UpdateActiveSensitive(CPoint ptCursorCell);
	void SetNullMouseSensitive();

public:
	CMouseSensitiveCollection(CAnsiScreen *pScreen);
	virtual ~CMouseSensitiveCollection();

};

#endif // !defined(AFX_MOUSESENSITIVECOLLECTION_H__B34E1C2C_3C30_4583_999A_0EE9858056E5__INCLUDED_)
